// P3812 write by cn_ryh